2022年1月7日
Jerry
15463
2023年11月6日
NodeMCU,是一个开源的物联网平台。 它使用Lua脚本语言编程。该平台基于eLua 开源项目,底层使用ESP8266 sdk 0.9.5版本。NodeMCU包含了可以运行在 esp8266 Wi-Fi SoC芯片之上的固件,以及基于ESP-12模组的硬件。
ESP8266的GPIO(1,3,9,10)不能按常规的GPIO方式进行理解和使用,根据ESP8266的系统(SoC)设计,其内部包含了处理器芯片等组件,处理器大约有16条GPIO线路,其中一些GPIO规定默认用于与其他内部组件进行通信,比如与内部闪存的通信等。这样我们大约还有11个GPIO引脚可按常规GPIO进行使用,在这11个针脚中,又有2个针脚预留给串口RX和TX。因此,最后只剩下9个通用I/O引脚,即D0到D8。
在实际使用中,从上图我们可以看到一些GPIO引脚同时兼备了其他功能,如RX, TX, SD2, SD3,这些引脚大多不作为GPIO使用,因为它们可用于其他进程。极端情况下,可使用 SD3 (D12)引脚,D12引脚主要用于响应GPIO/PWM/中断等功能。需要注意的是,D0|GPIO16引脚只能作为GPIO读/写使用,不支持任何特殊功能。
以Arduinuo编程为例,简单的闪灯程序:
uint8_t LED_Pin = D1; //或者写 uint8_t LED_Pin = 5 因为D1对应的口为 GPIO5
void setup() {
pinMode(LED_Pin, OUTPUT); //初始化接口为output
}
void loop() {
digitalWrite(LED_Pin, LOW); // 写低电平
delay(1000);
digitalWrite(LED_Pin, HIGH);// 写高电平
delay(1000);
}
附上ESP 8266 做的小玩意帖子:
nodemcu esp8266 烧录micropython固件
ESP01s + blinker + 小度音响 实现客厅灯远程控制(一)
原创文章,转载请注明出处:
https://jerrycoding.com/article/nodemcu-io
《物联网开发》
0
微信
支付宝